package com.kantboot.system.user.service;

import com.kantboot.system.user.domain.entity.SysUser;

import java.util.List;

public interface ISysUserService {

    /**
     * 创建新用户
     */
    SysUser createNewUser(SysUser user);

    /**
     * 根据角色编码查询
     */
    List<SysUser> getByRoleCode(String roleCode);

    /**
     * 根据角色编码和邀请人id查询
     */
    List<SysUser> getByRoleCodeAndInviterId(String roleCode, Long inviterId);


    /**
     * 根据角色编码和邀请人id查询数量
     */
    Long countByRoleCodeAndInviterId(String roleCode, Long inviterId);

    /**
     * 根据邀请人id查询
     */
    List<SysUser> getByInviteUserId(Long inviterUserId);

    List<SysUser> getAll();

    /**
     * 根据用户ID获取
     */
    SysUser getById(Long id);
}
